/**
 * 用户角色类型
 */
export type UserRole = 'ROLE_ADMIN' | 'ROLE_USER';

/**
 * 用户状态
 */
export enum UserStatus {
  DISABLED = 0,
  ENABLED = 1
}

/**
 * 用户基本信息
 */
export interface User {
  id: number;
  username: string;
  phone?: string;
  avatar?: string;
  role: UserRole;
  status?: UserStatus;
  createTime?: string;
}

/**
 * 登录请求参数
 */
export interface LoginRequest {
  username: string;
  password: string;
}

/**
 * 登录响应数据
 */
export interface LoginResponse extends User {
  token: string;
}

/**
 * 注册请求参数
 */
export interface RegisterRequest {
  username: string;
  password: string;
  phone?: string;
  avatar?: string;
}

/**
 * 修改密码请求参数
 */
export interface ChangePasswordRequest {
  oldPassword: string;
  newPassword: string;
}

/**
 * 重置密码请求参数
 */
export interface ResetPasswordRequest {
  newPassword: string;
}

/**
 * 创建/更新用户请求参数
 */
export interface UserCreateUpdateRequest {
  username?: string;
  password?: string;
  phone?: string;
  avatar?: string;
  role?: UserRole;
} 